package cn.iocoder.yudao.module.scrm.annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.HashMap;
import java.util.Map;

/**
 * 自定义注解类处理器
 *
 * @Author LiZhiMin
 * @Date 2024/8/21 12:18
 */

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.PARAMETER, ElementType.FIELD, ElementType.TYPE})
public @interface FieldRepeatValidator {

    /**
     * 注解属性 - 对应校验字段,表字段
     *
     * @return
     */
    String field();

    /**
     * 默认错误提示信息
     *
     * @return
     */
    String message() default "字段内容重复！";

    /**
     * @return 实体类属性
     */
    String property();

    /**
     * 外键字段
     *
     * @return
     */
    String foreignKeyField() default "0";

    /**
     * 注解属性
     */
    String foreignKeyProperty() default "0";


    /**
     * 区分排期客户和访客的字段 0正常单个字段去重复 1 访客(排期中的访客)  2 客户信息(排期中的签到)
     */
    String type() default "0";

    /**
     * 判断字段是否能为空，0不能为空  1允许为空
     */
    String ifFieldNullValue() default "0";


}
